export function debounce(func, time, immediant) {
  //使用闭包定义计时器标志
  let timer;
  let count = 0;
  return function () {
    console.log("防抖次数:", count++);
    //每次触发如果存在则清除
    if (timer) clearTimeout(timer);

    if (immediant) {
      //下列定义立即执行标志
      let callNow = !timer;

      //设置计时器
      timer = setTimeout(() => {
        func.apply(this, arguments);
        count = 0;
      }, time);

      //立即执行
      if (callNow) func.apply(this, arguments);
    } else {
      //设置计时器
      timer = setTimeout(() => {
        func.apply(this, arguments);
        count = 0;
      }, time);
    }
  };
}
